Visual Basic version 5 does not contain any native support for HTML Help. What this means is that even if you compile your component with the 'Helpfile' property containing a valid .chm file, VB5 will assume the file is a Winhelp file and will display an error message if a user attempts to invoke context sensitive help for your component.
This is an issue with Visual Basic 5 that (with the release of Version 6) is unlikely to ever be resolved and the only current choice most Version 5 developers and users have is to continue to use the Winhelp standard to create and use Help files.
Document! VB offers a solution to this problem in the form of a 'Winhelp stub' file. A Winhelp stub accepts and redirects Help requests from a development environment that only works with Winhelp files (i.e. Visual Basic 5) to your HTML Help file. By doing so, it allows you to create HTML Help based context sensitive help that can be used by both VB5 and VB6 users.
Creating the WinHelp stub
Follow the steps below to make use of the 'Winhelp stub' feature :
Document! VB sets up all of the necessary registry settings such that after running the Document! VB wizard you can a) compile the version of your source generated by Document! VB (containing the Help Context IDs to support context sensistive help) and then b) test the help functionality in VB6 and / or VB5 on your development machine.
When shipping to VB5 users
Registry Entries
Both WinHelp and HTML Help use the Windows registry to determine the location of a given help file. The Document! VB WinHelp stub feature uses that fact to ensure that your HTML Help based documentation is available from within VB5 and 6.
The following registry entry should be created to support VB6 users for an imaginary project named SuperbComponent (NOTE that the registry entries described are automatically created by Document! VB on your development machine when your run the wizard) :
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\HTML Help\<filename.chm> = <Full path to normal help file>
The following 2 registry entries should be created to support VB5 users :
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\Help\<filename.chm> =
<Full path to help file created in WinHelpStub directory>
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\HTML
Help\_<filename.chm> = <Full path to help file prefixed with underscore
created in WinHelpStub directory>
When shipping to just VB6 users
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\HTML Help\<filename.chm> = <Full path to normal help file>
Note You do not have to compile the source code generated by Document! VB containing the Help context IDs for users of different VB versions (unless you wish to), just follow the Help file naming method outlined above when shipping your software.
Quick Checklist